package com.example.flowermall.entity.wx;

import lombok.Data;

import java.io.Serializable;

/**
 * 支付、退款数据回调通用
 * @author shuaifengjie.com
 */
@Data
public class CallbackBodyVo implements Serializable {

	/**
	 *
	 */
	private static final long serialVersionUID = -3279905156049535047L;


    /** 通知Id */
    private String id;
    /**
     * 通知创建时间
     */
    private String create_time;
    /**
     * 通知类型
     * 支付成功：TRANSACTION.SUCCESS
     * 退款成功：REFUND.SUCCESS
     */
    private String resource_type;
    /**
     * 通知数据类型
     */
    private String event_type;
    /**
     * 回调摘要
     */
    private String summary;
    /**
     * 通知数据
     */
    private Resource resource;

    /**
     * 通知数据
     */
    @Data
    public static class Resource {
        /**
         * 对开启结果数据进行加密的加密算法，目前只支持AEAD_AES_256_GCM。
         */
        private String algorithm;
        /**
         * Base64编码后的开启/停用结果数据密文。
         */
        private String ciphertext;
        /**
         * 附加数据。
         */
        private String associated_data;
        /**
         * 加密使用的随机串。
         */
        private String nonce;
        /**
         * 原始回调类型。
         */
        private String original_type;
    }
}
